home *** CD-ROM | disk | FTP | other *** search
/ Aminet 24 / Aminet 24 (1998)(GTI - Schatztruhe)[!][Apr 1998].iso / Aminet / comm / misc / CapiRexxVoiceM.lha / capi-usr.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-10-09  |  15.4 KB  |  480 lines

  1. #ifndef CAPI_USR_H
  2. #define CAPI_USR_H
  3. /*
  4. **
  5. **    $Id: capi-usr.h,v 1.876 1996/08/13 03:10:21 chris Exp $
  6. **
  7. **    $Filename: include/capi-usr.h $
  8. **    $Author: chris $
  9. **    $Portability: ANSI $
  10. **
  11. **    Header file to the CAPI-User interface. This interface makes the
  12. **    application's calls to the CAPI driver independant from the operating
  13. **    system running the CAPI. Every supported OS has its own CAPI-User.c
  14. **    interface file.
  15. **
  16. **    No warranty. Use at your own risk.
  17. **
  18. **    COPYRIGHT (C) 1993-1996 BY RELOG AG, ZUERICH. ALL RIGHTS RESERVED.
  19. **    NO PART OF THIS SOFTWARE MAY BE COPIED, REPRODUCED, OR TRANSMITTED
  20. **    IN ANY FORM OR BY ANY MEANS,  WITHOUT THE PRIOR WRITTEN PERMISSION
  21. **    OF RELOG AG.
  22. **
  23. */
  24.  
  25.  
  26. /*
  27. **    Maximal length of an ISDN phone number + 1
  28. */
  29. #define CAPI_MAX_NUMBER_SIZE (20+1)        /* ETS 300-102-1 Page 55 */
  30.  
  31.  
  32. /*
  33. **    Macro: Initializes a pointer to the start of the parameter
  34. **         block of a CAPI message
  35. **    Example: para = INIT_PARA( msg );
  36. */
  37. #define INIT_PARA( msg ) ((unsigned char *)((msg)+1))
  38.  
  39.  
  40. /*
  41. **    Macro: Adds an integral parameter to a CAPI message parameter block
  42. **    and increases the pointer accordin to the parameter's size.
  43. **    Example: ADD_PARRA( para, U32, myplci );
  44. */
  45. #define ADD_PARA( p, t, v ) (*(t *)p = (v), (p) = (void *)((char *)(p) + sizeof(t)))
  46.  
  47.  
  48. /*
  49. **    Macro: Gets an integral parameter from a CAPI message parameter block
  50. **    and increases the pointer accordin to the parameter's size.
  51. **    Example: GET_PARA( para, U32, plci );
  52. */
  53. #define GET_PARA( p, t, v ) ((v) = *(t *)p, (p) = (void *)((char *)(p) + sizeof(t)))
  54.  
  55.  
  56. /*
  57. **    Macro: Skips a parameter from a CAPI message parameter block
  58. **    and increases the pointer accordin to the parameter's size.
  59. **    Example: SKIP_PARA( para, U32 );
  60. */
  61. #define SKIP_PARA( p, t ) ((p) = (void *)((char *)(p) + sizeof(t)))
  62.  
  63.  
  64. /*
  65. **    Header of a CAPI message
  66. */
  67. typedef struct
  68. {
  69.     unsigned short    TotalLength;    /* Length of message including this header */
  70.     unsigned short    ApplID;            /* Application ID (from CAPI_REGISTER) */
  71.     unsigned char    Command;        /* Command */
  72.     unsigned char     Subcommand;        /* Command extension */
  73.     unsigned short    MessageNumber;    /* Message number */
  74. } CAPI_MESSAGE;
  75.  
  76.  
  77. #define CAPI_ICORE_PROFILE_MAGIC    0x1C04    /* For CAPI_ICORE_PROFILE */
  78.  
  79. /*
  80. **    Manufacturer specific part of CAPI_PROFILE (20 octets).
  81. **    Validity of structure elements depends on the Version field.
  82. */
  83. typedef struct
  84. {
  85.     unsigned short    Magic;            /* CAPI_ICORE_PROFILE_MAGIC */
  86.     unsigned char    Version;        /* Structure version. Currently 2 */
  87.     unsigned char    InterruptNo;    /* Interrupt number of this controller */
  88.     unsigned long    Address;        /* I/O address of this controller */
  89.     unsigned char    Flags;            /* See PROFILEF_... */
  90.     unsigned char    pad[11];        /* Not defined in Version <= 2 */
  91. } CAPI_ICORE_PROFILE;
  92.  
  93.  
  94. /*
  95. **    Flags for CAPI_ICORE_PROFILE.Flags
  96. */
  97. #define PROFILE_DPROT_MASK        0x07    /* Mask for D-protocols */
  98. #define PROFILE_DPROT_Q931        0x01    /* Q.931 signalling in use */
  99. #define PROFILE_DPROT_1TR6        0x02    /* 1TR6  signalling in use */
  100. #define PROFILEF_DPROT_AUTO        0x08    /* Auto-detect D-channel protocol */
  101.  
  102. #define PROFILEF_OVERLAP        0x10    /* Use Overlap Receiving (Durchwahl) */
  103.  
  104.  
  105. /*
  106. **    Structure returned by the manufacturer specific command
  107. **    CAPI_ICORE_GET_STATUS
  108. */
  109. typedef struct
  110. {
  111.     /* Filled in by caller of CAPI_ICORE_GET_STATUS */
  112.     unsigned char    ControllerNo;            /* Controller number (1..n) */
  113.     unsigned char    BChannel;                /* B-channel number */
  114.  
  115.     /* Filled in by CAPI_ICORE_GET_STATUS */
  116.     unsigned char    Version;                /* Structure version. Currently 1 */
  117.     unsigned char    pad;
  118.     unsigned short    B1Protocol;                /* CAPI_B1PROT_... */
  119.     unsigned short    B2Protocol;                /* CAPI_B2PROT_... */
  120.     unsigned short    B3Protocol;                /* CAPI_B3PROT_... */
  121.     unsigned short    Flags;                    /* CAPI_ICORE_STATUSF_... */
  122.     unsigned long    BytesSent;                /* Number of bytes sent so far */
  123.     unsigned long    BytesReceived;            /* Number of bytes received so far */
  124.     unsigned long    ConnectionCost;            /* Cost in small currency */
  125.     unsigned char    ConnectedNumber[CAPI_MAX_NUMBER_SIZE];    /* Number of other party */
  126.  
  127.     unsigned char    pad2[208];                /* Total 256 Bytes */
  128. } CAPI_ICORE_STATUS;
  129.  
  130.  
  131. /*
  132. **    Flags for CAPI_ICORE_STATUS.Flags
  133. */
  134. #define CAPI_ICORE_STATUSF_AA    0x0001        /* "Auto Answer", somebody listens on that controller */
  135. #define CAPI_ICORE_STATUSF_CD    0x0002        /* "Carrier Detect", a connection is active */
  136. #define CAPI_ICORE_STATUSF_DIR    0x0004        /* Call direction (1 = outgoing) */
  137. #define CAPI_ICORE_STATUSF_HS    0x0008        /* "High Speed" i.e. not V.110 */
  138. #define CAPI_ICORE_STATUSF_TR    0x0010        /* "Terminal Ready", somebody listening */
  139.  
  140.  
  141. /*
  142. **    Result of CAPI_GET_PROFILE
  143. */
  144. typedef struct
  145. {
  146.     unsigned short        NumControllers;        /* Number of installed controllers */
  147.     unsigned short        NumBChannels;        /* Number of supported B-channels */
  148.     unsigned long        GlobalOptions;        /* See CAPI doc page 139 */
  149.     unsigned long        B1Protocols;
  150.     unsigned long        B2Protocols;
  151.     unsigned long        B3Protocols;
  152.     unsigned long        CAPIReserved[6];
  153.     CAPI_ICORE_PROFILE    Manufacturer;        /* Manufacturer specific data */
  154. } CAPI_PROFILE;
  155.  
  156.  
  157. /*
  158. **    B1 Configuration
  159. */
  160. typedef struct
  161. {
  162.     unsigned short    Rate;            /* Bit Rate (75 .. 38400) */
  163.     unsigned short    BitsLevel;        /* Number of data bits (8 or 7) */
  164.     unsigned short    Parity;            /* 0=none, 1=odd, 2=even */
  165.     unsigned short    StopBits;        /* 0=1 stop bit, 1=2 stop bits */
  166. } CAPI_B1_CONFIG;
  167.  
  168.  
  169. /*
  170. **    B2 Configuration
  171. */
  172. typedef struct
  173. {
  174.     unsigned char    AddressA;
  175.     unsigned char    AddressB;
  176.     unsigned char    ModuloMode;
  177.     unsigned char    WindowSize;
  178.     unsigned char    XIDLen;
  179.     /* followed by struct XID */
  180. } CAPI_B2_CONFIG;
  181.  
  182.  
  183. /*
  184. **    B3 Configuration
  185. */
  186. typedef struct
  187. {
  188.     unsigned short    LIC;
  189.     unsigned short    HIC;
  190.     unsigned short    LTC;
  191.     unsigned short    HTC;
  192.     unsigned short    LOC;
  193.     unsigned short    HOC;
  194.     unsigned short    ModuloMode;
  195.     unsigned short    WindowSize;
  196. } CAPI_B3_CONFIG_NL;
  197.  
  198. typedef struct
  199. {
  200.     unsigned short    Resolution;
  201.     unsigned short    Format;
  202.     /* Followed by struct station id and struct head line */
  203. } CAPI_B3_CONFIG_T30;
  204.  
  205.  
  206.  
  207. /*
  208. **    CAPI information values and error codes
  209. */
  210.  
  211. /* Class 0x00xx: Informative values (corresponding message was processed) */
  212. #define CAPI_00_REQUEST_ACCEPTED                        0
  213. #define CAPI_00_NCPI_IGNORED                            0x0001
  214. #define CAPI_00_FLAGS_IGNORED                            0x0002
  215. #define CAPI_00_ALERT_SENT_BY_OTHER_APP                    0x0003
  216.  
  217. /* Class 0x10xx: Error information concerning CAPI_REGISTER */
  218. #define CAPI_10_TOO_MANY_APPLICATIONS                    0x1001
  219. #define CAPI_10_BLOCK_SIZE_TOO_SMALL                    0x1002
  220. #define CAPI_10_BUFFER_TOO_LARGE                        0x1003
  221. #define CAPI_10_BUFFER_TOO_SMALL                        0x1004
  222. #define CAPI_10_TOO_MANY_CONNECTIONS                    0x1005
  223. #define CAPI_10_reserved1006                            0x1006
  224. #define CAPI_10_INTERNAL_BUSY                            0x1007
  225. #define CAPI_10_OS_RESOURCE_ERROR                        0x1008
  226. #define CAPI_10_CAPI_NOT_INSTALLED                        0x1009
  227. #define CAPI_10_EXTERNAL_NOT_SUPPORTED                    0x100A
  228. #define CAPI_10_ONLY_EXTERNAL_SUPPORTED                    0x100B
  229.  
  230. /* Class 0x11xx: Error information concerning message exchange functions */
  231. #define CAPI_11_ILLEGAL_APPLID                            0x1101
  232. #define CAPI_11_ILLEGAL_MESSAGE                            0x1102
  233. #define CAPI_11_MESSAGE_NOT_ACCEPTED                    0x1103
  234. #define CAPI_11_MESSAGE_QUEUE_EMPTY                        0x1104
  235. #define CAPI_11_MESSAGE_QUEUE_OVERFLOW                    0x1105
  236. #define CAPI_11_UNKNOWN_NOTIFICATION_PARAMETER            0x1106
  237. #define CAPI_11_INTERNAL_BUSY                            0x1107
  238. #define CAPI_11_OS_RESOURCE_ERROR                        0x1108
  239. #define CAPI_11_EXTERNAL_NOT_SUPPORTED                    0x110A
  240. #define CAPI_11_ONLY_EXTERNAL_SUPPORTED                    0x110B
  241.  
  242. /* Class 0x20xx: Error information concerning resource / coding problems */
  243. #define CAPI_20_MSG_UNSUPPORTED_IN_STATE                0x2001
  244. #define CAPI_20_ILLEGAL_CONTROLLER                        0x2002    /* 3x */
  245. #define CAPI_20_ILLEGAL_PLCI                            0x2002    /* 3x */
  246. #define CAPI_20_ILLEGAL_NCCI                            0x2002    /* 3x */
  247. #define CAPI_20_OUT_OF_PLCI                                0x2003
  248. #define CAPI_20_OUT_OF_NCCI                                0x2004
  249. #define CAPI_20_OUT_OF_LISTEN                            0x2005
  250. #define CAPI_20_OUT_OF_FAX_RESOURCES                    0x2006
  251. #define CAPI_20_ILLEGAL_PARAMETER_CODING                0x2007
  252.  
  253. /* Class 0x30xx: Error information concerning requested services */
  254. #define CAPI_30_B1_PROTOCOL_NOT_SUPPORTED                0x3001
  255. #define CAPI_30_B2_PROTOCOL_NOT_SUPPORTED                0x3002
  256. #define CAPI_30_B3_PROTOCOL_NOT_SUPPORTED                0x3003
  257. #define CAPI_30_B1_PARAMETER_NOT_SUPPORTED                0x3004
  258. #define CAPI_30_B2_PARAMETER_NOT_SUPPORTED                0x3005
  259. #define CAPI_30_B3_PARAMETER_NOT_SUPPORTED                0x3006
  260. #define CAPI_30_B_PROTOCOL_COMBINATION_NOT_SUPPORTED    0x3007
  261. #define CAPI_30_NCPI_NOT_SUPPORTED                        0x3008
  262. #define CAPI_30_CIP_VALUE_UNKNOWN                        0x3009
  263. #define CAPI_30_FLAGS_NOT_SUPPORTED                        0x300A
  264. #define CAPI_30_FACILITY_NOT_SUPPORTED                    0x300B
  265. #define CAPI_30_DATA_LENGTH_NOT_SUPPORTED                0x300C
  266. #define CAPI_30_RESET_PROCEDURE_NOT_SUPPORTED            0x300D
  267.  
  268. /* Class 0x33xx: Reason */
  269. #define CAPI_33_PROTOCOL_ERROR_L1                        0x3301
  270. #define CAPI_33_PROTOCOL_ERROR_L2                        0x3302
  271. #define CAPI_33_PROTOCOL_ERROR_L3                        0x3303
  272.  
  273. /* Class 0x34xx */
  274. #define CAPI_34_ANOTHER_APPLICATION_GOT_THE_CALL        0x3404
  275.  
  276.  
  277. /*
  278. **    Message types for CAPI_MESSAGE->Command
  279. */
  280.  
  281. /* Signalling messages */
  282. #define CAPICMD_ALERT                    0x01
  283. #define CAPICMD_CONNECT                    0x02
  284. #define CAPICMD_CONNECT_ACTIVE            0x03
  285. #define CAPICMD_DISCONNECT                0x04
  286. #define CAPICMD_INFO                    0x08
  287.  
  288. /* Messages concerning logical connections */
  289. #define CAPICMD_CONNECT_B3                0x82
  290. #define CAPICMD_CONNECT_B3_ACTIVE        0x83
  291. #define CAPICMD_DISCONNECT_B3            0x84
  292. #define CAPICMD_DATA_B3                    0x86
  293. #define CAPICMD_RESET_B3                0x87
  294. #define CAPICMD_CONNECT_B3_T90_ACTIVE    0x88
  295.  
  296. /* Administrative and other messages */
  297. #define CAPICMD_LISTEN                    0x05
  298. #define CAPICMD_SELECT_B_PROTOCOL        0x41
  299. #define CAPICMD_FACILITY                0x80
  300. #define CAPICMD_MANUFACTURER            0xFF
  301.  
  302.  
  303. /*
  304. **    Subcommands for CAPI_MESSAGE->Subcommand
  305. */
  306. #define CAPISUBCMD_REQ                    0x80
  307. #define CAPISUBCMD_CONF                    0x81
  308. #define CAPISUBCMD_IND                    0x82
  309. #define CAPISUBCMD_RESP                    0x83
  310.  
  311.  
  312. /*
  313. **    CIP values (CONNECT_REQ, CONNECT_IND)
  314. */
  315. #define CAPI_CIP_NONE                    0    /* No predefined profile */
  316. #define CAPI_CIP_SPEECH                    1    /* Speech */
  317. #define CAPI_CIP_DATA                    2    /* Unrestricted digital information */
  318. #define CAPI_CIP_RESTRICTED_DATA        3    /* Restricted digital information */
  319. #define CAPI_CIP_AUDIO31                4    /* 3.1 kHz audio */
  320. #define CAPI_CIP_AUDIO7                    5    /* 7 kHz audio */
  321. #define CAPI_CIP_VIDEO                    6    /* Video */
  322. #define CAPI_CIP_PACKET                    7    /* Packet mode */
  323. #define CAPI_CIP_RA56                    8    /* 56 kBit/s rate adaption */
  324. #define CAPI_CIP_DATA_TONES                9    /* Unrestricted digital information w/ tones/announcements */
  325. #define CAPI_CIP_TELEPHONY                16    /* Telephony */
  326. #define CAPI_CIP_FAX3                    17    /* Facsimile group 2/3 */
  327. #define CAPI_CIP_FAX4                    18    /* Facsimile group 4 class 1 */
  328. #define CAPI_CIP_19                        19    /* See capi20 doc page 74 */
  329. #define CAPI_CIP_20                        20    /* Teletex service basic and processable mode */
  330. #define CAPI_CIP_21                        21    /* Teletex service basic mode */
  331. #define CAPI_CIP_VIDEOTEX                22    /* International interworking for videotex */
  332. #define CAPI_CIP_TELEX                    23    /* Telex */
  333. #define CAPI_CIP_X400                    24    /* Message Handling Systems according to X.400 */
  334. #define CAPI_CIP_X200                    25    /* OSI application according to X.200 */
  335. #define CAPI_CIP_TELEPHONY7                26    /* 7 kHz Telephony */
  336. #define CAPI_CIP_VIDEOTEL1                27    /* Video telephony, first connection */
  337. #define CAPI_CIP_VIDEOTEL2                28    /* Video telephony, second connection */
  338.  
  339.  
  340. /*
  341. **    Bits for Info mask (LISTEN_REQ)
  342. */
  343. #define CAPI_INFO_CAUSE                    0x00000001
  344. #define CAPI_INFO_DATETIME                0x00000002
  345. #define CAPI_INFO_DISPLAY                0x00000004
  346. #define CAPI_INFO_USERUSER                0x00000008
  347. #define CAPI_INFO_CALLPROGRESSION        0x00000010
  348. #define CAPI_INFO_FACILITY                0x00000020
  349. #define CAPI_INFO_CHARGING                0x00000040
  350.  
  351.  
  352. /*
  353. **    Values for Reject (CONNECT_RESP and CONNECT_B3_RESP)
  354. */
  355. #define CAPI_REJECT_ACCEPT                0x0000    /* Accept call */
  356. #define CAPI_REJECT_IGNORE                0x0001    /* Ignore call */
  357. #define CAPI_REJECT_NORMAL                0x0002    /* Reject call, normal call clearing */
  358. #define CAPI_REJECT_BUSY                0x0003    /* Reject call, user busy */
  359. #define CAPI_REJECT_NOCHANNEL            0x0004    /* Reject call, requested circuit/channel n/a */
  360. #define CAPI_REJECT_FACILITY            0x0005    /* Reject call, facility rejected */
  361. #define CAPI_REJECT_CHANNEL                0x0006    /* Reject call, channel unacceptable */
  362. #define CAPI_REJECT_INCOMPATIBLE        0x0007    /* Reject call, incompatible destination */
  363. #define CAPI_REJECT_DESTOUTOFORDER        0x0008    /* Reject call, destination out of order */
  364.  
  365.  
  366. /*
  367. **    B1 protocols (CAPI 2.0 p. 66ff)
  368. */
  369. #define CAPI_B1PROT_HDLC64                0        /* 64kBit/s with HDLC framing (default) */
  370. #define CAPI_B1PROT_TRANSP64            1        /* 64kBit/s transparent */
  371. #define CAPI_B1PROT_V110ASYNC            2        /* V.110 async with start/stop byte framing */
  372. #define CAPI_B1PROT_V110SYNC            3        /* V.110 synchronous with HDLC framing */
  373. #define CAPI_B1PROT_T30                    4        /* T.30 modem for fax group 3 */
  374. #define CAPI_B1PROT_HDLCI64                5        /* 64kBit/s inverted with HDCL framing */
  375. #define CAPI_B1PROT_TRANSP56            6        /* 56kBit/s transparent */
  376.  
  377.  
  378. /*
  379. **    B2 protocols
  380. */
  381. #define CAPI_B2PROT_X75                    0        /* ISO 7776 / X.75 SLP (default) */
  382. #define CAPI_B2PROT_TRANSP                1        /* Transparent */
  383. #define CAPI_B2PROT_SDLC                2        /* SDLC */
  384. #define CAPI_B2PROT_LAPD                3        /* LAPD according Q.921 for D-channel X.25 */
  385. #define CAPI_B2PROT_T30                    4        /* T.30 for fax group 3 */
  386. #define CAPI_B2PROT_PPP                    5        /* Point to Point Protocol (PPP) */
  387. #define CAPI_B2PROT_XTRANSP                6        /* Transparent (ignoring B1 framing errors) */
  388.  
  389.  
  390. /*
  391. **    B3 protocols
  392. */
  393. #define CAPI_B3PROT_TRANSP                0        /* Transparent (default) */
  394. #define CAPI_B3PROT_T90                    1        /* T.90 network layer (compatible to T.70) */
  395. #define CAPI_B3PROT_ISO8208                2        /* ISO 8208 (X.25 DTE-DTE) */
  396. #define CAPI_B3PROT_X25DCE                3        /* X.25 DCE */
  397. #define CAPI_B3PROT_T30                    4        /* T.30 for fax group 3 */
  398.  
  399.  
  400. /*
  401. **    Function codes
  402. */
  403. #define CAPI_FC_REGISTER            0x01
  404. #define CAPI_FC_RELEASE                0x02
  405. #define CAPI_FC_PUT_MESSAGE            0x03
  406. #define CAPI_FC_GET_MESSAGE            0x04
  407. #define CAPI_FC_SET_SIGNAL            0x05
  408. #define CAPI_FC_DEINSTALL            0x06    /* CAPI 1.1 only */
  409. #define CAPI_FC_GET_MANUFACTURER    0xF0
  410. #define CAPI_FC_GET_VERSION            0xF1
  411. #define CAPI_FC_GET_SERIAL_NUMBER    0xF2
  412. #define CAPI_FC_GET_PROFILE            0xF3
  413. #define CAPI_FC_MANUFACTURER        0xFF
  414.  
  415.  
  416. /*
  417. **    PLCI State Machine (page 94)
  418. */
  419.  
  420. #define P0_IDLE                        0    /* We are idle */
  421. #define P01_CONNECT_REQUEST            101    /* Sent CONNECT_REQ */
  422. #define P1_CONNECT_CONFIRM            1    /* Got CONNECT_CONF */
  423. #define P2_CONNECT_INDICATION        2    /* Got CONNECT_IND */
  424. #define P3                            3    /* Handset things */
  425. #define P4_CALL_ACCEPTED            4    /* Sent CONNECT_RESP(accept) */
  426. #define P5_DISCONNECT_REQUEST        5    /* Sent DISCONNECT_REQ or CONNECT_RESP(reject) */
  427. #define P6_DISCONNECT_INDICATION    6    /* Got DISCONNECT_IND */
  428. #define P_ACTIVE                    10    /* Got CONNECT_ACTIVE_IND */
  429.  
  430.  
  431. /*
  432. **    NCCI State Machine (page 96)
  433. */
  434.  
  435. #define N0_IDLE                        0    /* Nada */
  436. #define N01_CONNECT_REQUEST            101    /* Sent CONNECT_B3_REQ */
  437. #define N1_CONNECT_INDICATION        1    /* Got CONNECT_B3_IND */
  438. #define N2_CONNECT_INITIATED        2    /* Got CONNECT_B3_CONF or RESP */
  439. #define N3_RESET_REQUEST            3    /* Sent RESET_B3_REQ */
  440. #define N4_DISCONNECT_REQUEST        4    /* Sent DISCONNECT_B3_REQ or CONNECT_B3_RESP(reject) */
  441. #define N5_DISCONNECT_INDICATION    5    /* Got DISCONNECT_B3_IND */
  442. #define N_ACTIVE                    10    /* Got CONNECT_B3_ACTIVE_IND */
  443.  
  444.  
  445. /*
  446. **    Prototypes for the OS-independant CAPI abstraction layer (CAPI-Usr.c)
  447. */
  448.  
  449. unsigned
  450. U_CAPI_REGISTER( unsigned, unsigned, unsigned, unsigned short * );
  451.  
  452. unsigned
  453. U_CAPI_RELEASE( unsigned short );
  454.  
  455. unsigned
  456. U_CAPI_PUT_MESSAGE( unsigned short, CAPI_MESSAGE * );
  457.  
  458. unsigned
  459. U_CAPI_GET_MESSAGE( unsigned short, CAPI_MESSAGE ** );
  460.  
  461. unsigned short
  462. U_CAPI_SET_SIGNAL( unsigned short, unsigned long, unsigned long );
  463.  
  464. void
  465. U_CAPI_GET_MANUFACTURER( char * );
  466.  
  467. void
  468. U_CAPI_GET_VERSION( unsigned long * );
  469.  
  470. void
  471. U_CAPI_GET_SERIAL_NUMBER( char * );
  472.  
  473. unsigned
  474. U_CAPI_GET_PROFILE( CAPI_PROFILE *, unsigned short );
  475.  
  476. unsigned
  477. U_CAPI_INSTALLED( void );
  478.  
  479. #endif
  480.